/**
 * @Company:中享思途   
 * @Title:CatalogServiceImpl.java 
 * @Author:IL Clown   
 * @Date:2020年8月19日 下午5:15:57     
 */
package com.situ.shopsystem.service.Impl;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;

import javax.servlet.http.HttpSession;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.situ.shopsystem.dao.CatalogDao;
import com.situ.shopsystem.pojo.Catalog;
import com.situ.shopsystem.pojo.User;
import com.situ.shopsystem.service.CatalogService;

/** 
 * @ClassName:CatalogServiceImpl 
 * @Description:(这里用一句话描述这个类的作用)  
 */
@Service
public class CatalogServiceImpl implements CatalogService {
	@Autowired
	private CatalogDao catalogDao;

	/** 
	 * @Title: save 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @param catalog
	 * @return  
	 */
	@Override
	public int save(Catalog catalog, HttpSession session) {
		User user = (User) session.getAttribute("loginUser");
		catalog.setCreater(user.getRowId());
		catalog.setCreateTime(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date()));
		catalog.setActiveFlag(1);
		return catalogDao.save(catalog);
	}

	/** 
	 * @Title: delete 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @param rowId
	 * @return  
	 */
	@Override
	public int delete(Long rowId) {
		return catalogDao.delete(rowId);
	}

	/** 
	 * @Title: update 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @param catalog
	 * @return  
	 */
	@Override
	public int update(Catalog catalog, HttpSession session) {
		User user = (User) session.getAttribute("loginUser");
		Catalog catalog2 = (Catalog) catalogDao.findOne(catalog.getRowId());
		catalog2.setInfo(catalog.getInfo());
		catalog2.setCatalogName(catalog.getCatalogName());
		catalog2.setUpdateBy(catalog.getRowId());
		catalog2.setUpdateTime(new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date()));
		return catalogDao.update(catalog2);
	}

	/** 
	 * @Title: findOne 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @param rowId
	 * @return  
	 */
	@Override
	public Catalog findOne(Long rowId) {
		return catalogDao.findOne(rowId);
	}

	/** 
	 * @Title: findAll 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @return  
	 */
	@Override
	public List<Catalog> findAll() {
		return catalogDao.findAll();
	}

	/** 
	 * @Title: findCount 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @return  
	 */
	@Override
	public int findCount() {
		return catalogDao.findCount();
	}

	/** 
	 * @Title: findAllByParent 
	 * @Description:(这里用一句话描述这个方法的作用)
	 * @return  
	 */
	@Override
	public List<Catalog> findAllByParent(Long parentId) {
		return catalogDao.findAllByParent(parentId);
	}

}
